package beans;

import java.beans.PropertyChangeEvent;
import java.beans.PropertyChangeListener;
import java.beans.PropertyVetoException;
import java.beans.VetoableChangeListener;
import java.io.Serializable;
import main.EinUndAusgabe;



public class Mitglied implements Serializable, PropertyChangeListener, VetoableChangeListener {

    private String name;
    
    
    public Mitglied() {
        name = "";
    }

    
    public void setName(String name) {
        this.name = name;
    }
    
    
    public String getName() {
        return name;
    }
    
    
    @Override
    public void propertyChange(PropertyChangeEvent evt) {
        Forum f = (Forum) evt.getSource();
        System.out.println(name + " bekommt eine Nachricht im Forum '" + f.getTitel() + "': " + evt.getNewValue());
    }
    
    
    @Override
    public void vetoableChange(PropertyChangeEvent evt) throws PropertyVetoException {
        Forum f = (Forum) evt.getSource();
        System.out.println(name + " bekommt eine Änderungs-Anfrage im Forum '" + f.getTitel() + "': " + evt.getNewValue());
        
        System.out.println("(0) Zustimmen\n (1) Ablehnen");
        EinUndAusgabe io = new EinUndAusgabe();
        int eingabe = -1;
        eingabe = io.leseInteger();
        
        if(eingabe == 1) {
            throw new PropertyVetoException("Anfrage wurde von " + name + " abgelehnt.", evt);
        }
    }
    

}
